Лабораторная работа №14

Дисциплина: Администрирование сетевых подсистем

Ибрахим Мохсейн Алькамаль

Российский университет дружбы народов

2026-02-13

Цель работы

Цель работы

  • Приобретение навыков настройки доступа групп пользователей к общим ресурсам по SMB
  • Организация совместного доступа с разграничением прав

Выполнение лабораторной работы

Настройка сервера Samba

  • Установлены пакеты samba, samba-client, cifs-utils через dnf
  • Транзакция установки завершена успешно

Рисунок 1: Установка пакетов samba, samba-client и cifs-utils с помощью dnf

  • Создана группа sambagroup (GID 1010)
  • Пользователь alkamal добавлен в группу
  • Создан каталог /srv/sambashare

Рисунок 2: Создание группы sambagroup, добавление пользователя и каталога /srv/sambashare

  • В smb.conf изменён workgroup = ALKAMAL-NET
  • Добавлен раздел [sambashare]
  • Указан путь /srv/sambashare
  • Задан write list = @sambagroup

Рисунок 3: Редактирование файла smb.conf: настройка workgroup и раздела sambashare

  • Выполнена проверка testparm
  • Ошибки конфигурации отсутствуют

Рисунок 4: Проверка конфигурации Samba с помощью testparm

  • Запущена служба smb
  • Добавлена в автозагрузку
  • Статус active (running)

Рисунок 5: Запуск и проверка статуса службы smb через systemctl

  • Выполнено smbclient -L //server
  • Отображены ресурсы print$, sambashare, IPC$

Рисунок 6: Вывод команды smbclient -L //server со списком общих ресурсов

  • Проверен файл samba.xml
  • Используются порты TCP 139 и 445

Рисунок 7: Содержимое файла samba.xml с описанием портов 139 и 445

  • В firewalld добавлена служба samba
  • Применены постоянные правила
  • Выполнен reload

Рисунок 8: Добавление службы samba в firewalld и перезагрузка конфигурации

  • Изменена группа каталога на sambagroup
  • Установлены права g=rwx
  • Проверен SELinux-контекст

Рисунок 9: Изменение группы и прав каталога sambashare, просмотр контекста SELinux

  • Назначен контекст samba_share_t
  • Применён restorecon

Рисунок 10: Настройка SELinux-контекста samba_share_t для каталога sambashare

  • Проверен обновлённый SELinux-контекст
  • Тип samba_share_t установлен

Рисунок 11: Проверка изменённого SELinux-контекста каталога sambashare

  • Установлен булев параметр samba_export_all_rw
  • Разрешён экспорт на чтение и запись

Рисунок 12: Установка SELinux-параметра samba_export_all_rw

  • Проверена команда id
  • Пользователь входит в sambagroup

Рисунок 13: Вывод команды id с указанием UID и групп пользователя

  • Создан файл alkamal@server.txt в /srv/sambashare
  • Выполнено smbpasswd -a alkamal
  • Пользователь добавлен в базу Samba

Рисунок 14: Создание файла в каталоге sambashare и добавление пользователя в базу Samba

Монтирование файловой системы Samba на клиенте

  • Установлены samba-client и cifs-utils
  • Транзакция завершена успешно

Рисунок 15: Установка пакетов samba-client и cifs-utils на клиенте

  • Добавлена служба samba-client в firewall
  • Применены постоянные правила

Рисунок 16: Настройка службы samba-client в firewalld на клиенте

  • Создана группа sambagroup (GID 1010)
  • Пользователь alkamal добавлен в группу

Рисунок 17: Создание группы sambagroup и добавление пользователя на клиенте

  • В smb.conf установлен workgroup = ALKAMAL-NET

Рисунок 18: Изменение параметра workgroup в smb.conf на клиенте

  • Выполнено smbclient -L //server
  • Анонимный вход выполнен успешно

Рисунок 19: Просмотр ресурсов сервера через smbclient под анонимной учётной записью

  • Создан каталог /mnt/samba
  • Выполнено монтирование //server/sambashare
  • Указаны параметры username, uid, gid

Рисунок 20: Монтирование ресурса //server/sambashare в /mnt/samba

  • В /mnt/samba создан файл alkamal@client.txt
  • Подтверждены права записи
  • Выполнен umount

Рисунок 21: Создание файла на смонтированном ресурсе и размонтирование

  • Создан файл /etc/samba/smbusers
  • Права 600
  • Указаны username и password

Рисунок 22: Создание файла smbusers с учётными данными

  • В /etc/fstab добавлена запись для //server/sambashare
  • Тип cifs, указаны uid, gid, credentials, _netdev

Рисунок 23: Добавление записи в /etc/fstab для автоматического монтирования Samba

  • Выполнено mount -a
  • Применена конфигурация

Рисунок 24: Применение конфигурации fstab с помощью mount -a

  • Проверено наличие /mnt/samba
  • Ресурс подключён успешно

Рисунок 25: Проверка наличия точки монтирования /mnt/samba

Внесение изменений в настройки внутреннего

  • В /vagrant/provision/server создан каталог smb/etc/samba
  • Скопирован smb.conf

Рисунок 26: Создание каталога smb и копирование smb.conf на сервере

  • Создан скрипт smb.sh для сервера
  • Реализованы установка, настройка firewall, SELinux
  • Создана группа и добавлен пользователь
  • Запущена служба smb

Рисунок 27: Содержимое скрипта smb.sh для сервера

  • На клиенте создан каталог smb/etc/samba
  • Скопированы smb.conf и smbusers

Рисунок 28: Подготовка каталога smb и копирование конфигурационных файлов на клиенте

  • Создан скрипт smb.sh для клиента
  • Реализованы установка пакетов, настройка firewall
  • Добавлена запись в /etc/fstab
  • Выполнено монтирование ресурса

Рисунок 29: Содержимое скрипта smb.sh для клиента

  • В Vagrantfile добавлен provision-блок для server

Рисунок 30: Добавление provision-блока для сервера в Vagrantfile

  • Добавлен provision-блок для client
  • Обеспечена автоматическая настройка

Рисунок 31: Добавление provision-блока для клиента в Vagrantfile

Выводы

Выводы

  • Настроен сервер Samba с общим ресурсом /srv/sambashare
  • Создана группа sambagroup и настроены права доступа
  • Назначен SELinux-контекст samba_share_t
  • Разрешён доступ через firewall
  • Настроено монтирование ресурса на клиенте через CIFS
  • Реализовано автоматическое подключение через /etc/fstab
  • Выполнена автоматизация конфигурации через provisioning-скрипты
  • Подтверждена возможность чтения и записи файлов по SMB